Major cellular telecommunications system types include those operating according to the Global Services for Mobile (GSM) Standard, the TIA/EIA/IS-95 Mobile Station-Base Station Compatibility Standard for Dual Mode Wide Band Spread Spectrum Cellular Systems (IS-95), the TIA/EIA/IS-136 Mobile Station-Base Station Compatibility Standard (IS-136), and the TIA/EIA 553 Analog Standard (AMPS/TACS). Other major cellular systems include those operating in the personal communications system (PCS) band according to the IS-95 based ANSI-J-STD-008 1.8-2.0 GHz standard or those operating according to the GSM based PCS1900 (1900 MHz frequency range) standard.
Currently, each of the major cellular system standards bodies is implementing data services into its digital cellular specifications. A data service specification has been finalized for GSM, and data service specifications compatible with the IS-95 and IS-136 standards are being prepared. The IS-95 data service standard is contained in the TIA/EIA document, "Data Service Options for Wideband Spread Spectrum Systems," PN-3676.1-PN-3676.6, which is to be published as TIA/EIA/IS-707.1-TIA/EIA/IS-707.6 (IS-707).
In an IS-707 based system, a radio link protocol (RLP) is utilized to provide an octet stream service over IS-95 forward and reverse traffic channels. The RLP is defined in Section IS-707.2 of IS-707. Each octet of the RLP comprises 8 bits of digital data. The octet stream service carries the variable length data packets of the point-to-point protocol layer. The RLP divides the point-to-point protocol packets into IS-95 traffic channel frames for transmission. The IS-95 traffic channel frames form the physical layer transmission frames. There is no direct relationship between point-to-point protocol packets and IS-95 frames. A large packet may span several IS-95 traffic channel frames, or a single traffic channel frame may include all or part of several point-to-point packets. The RLP does not take the higher level traffic channel framing into account but operates on a featureless octet stream, delivering the octets to the IS-95 multiplex sublayer for transmission in the order the octets are received from the point-to-point layer. The data may be transmitted on the traffic channel as primary traffic or, for example, along with speech, as secondary traffic. The IS-707 RLP generates and supplies one frame to the IS-95 multiple sublayer every 20 msec. The size of the RLP frame depends on the type of transmission frame available for transmitting the RLP frame.
The RLP utilizes RLP control frames to control the transmission of data and RLP data frames for the transmission of data at the RLP level.
The format of RLP control and data frames is defined so that each RLP frame includes an 8-bit sequence number field (SEQ). Each RLP data frame SEQ field contains the sequence number of that particular data frame. The sequence numbers are used to identify each received data frame and allow determination of data frames that have not been received. The RLP control frame SEQ field is not used to indicate the sequence number of the control frame but contains the next data frame sequence number to allow quick detection of erased data frames.
Each RLP data frame includes a number of data bits, with a maximum number of data bits allowed for each frame. The maximum number of data bits allowed in a data frame depends upon the IS-95 multiplex subchannel used and the transmission frame available. The range can vary. For example, for primary traffic on the traffic channel, using multiplex option 2 at IS-95 full rate, the maximum number of data bits allowed is 266; and for primary traffic on the traffic channel using multiplex option 1 at IS-95 half rate, the maximum number of data bits allowed is 80. When fewer than the maximum number of bits are transmitted in a frame, padding is used to fill out the data field. Each RLP data frame also includes an RLP frame type (CTL) field and a data length (LEN) field. The LEN field indicates the length of the data in the frame in octets. For unsegmented data frames, the CTL frame is one bit and is set to 0. For segmented data frames, the CTL frame contains 4 bits and can be set to indicate whether the data in the frame includes the first LEN octets, the next LEN octets, or the last LEN octets of the segmented data frame.
The RLP control frame may function as a negative acknowledgment (NAK) RLP control frame to request retransmission of unreceived data frames. A NAK RLP control frame includes a 4-bit frame type (CTL) field, a 4-bit length (LEN) field, an 8-bit FIRST field, an 8-bit LAST field, a reserved field (RSVD), a frame check sequence field (FCS) and padding. An RLP control frame having the frame type field set to indicate negative acknowledgment (NAK) may then be used to request retransmission of a particular data frame or a particular sequence of data frames. For example, a mobile station expecting a data frame having a particular sequence number would transmit a NAK control frame to the base station if the mobile determined that the data frame was missed from the sequence numbers of received RLP frames. The FIRST and LAST fields of the RLP NAK control frame are used to indicate the particular data frame or sequence (indicated as a range beginning at the sequence number indicated by the FIRST field and ending at the sequence number indicated by the LAST field) of data frames that are requested to be retransmitted. In IS-707, the number of requests for retransmission of a data frame is a set number, and the initiation of subsequent requests for retransmission after the initial NAK control frame is sent is controlled by a NAK retransmission timer. When RLP frames are carried as primary or secondary traffic, the retransmission timer is implemented as a frame counter. The NAK retransmission counter for a data frame is started upon the transmission of a NAK RLP control frame requesting retransmission of that data frame.
If the data frame has not arrived at the receiver when its NAK retransmission timer expires, the receiver sends a second NAK control frame requesting retransmission of that data frame. This NAK control frame is transmitted twice. The NAK retransmission timer for this data frame is then restarted. If the data frame has not arrived at the receiver when its NAK retransmission timer has expired twice, the receiver sends a third NAK control frame requesting retransmission of that data frame. Each NAK control frame transmitted as the result of a retransmission timer expiring a second time is transmitted three times.
A NAK abort timer is then started in the receiver upon transmission of the third NAK control frame. The NAK abort timer is implemented and expires identically to the NAK retransmission timer. If the data frame has not arrived at the receiver when its NAK abort timer has expired, the NAK is aborted and no further NAK control frames are transmitted for that data frame.
The IS-707 NAK retransmission scheme results in a maximum number of three retransmission requests that include a maximum number of six NAK RLP control frames being transmitted for a particular unreceived data frame.
In proposed medium or high data rate CDMA systems a much wider range of data rates may be used to carry data traffic as compared to an IS-95/IS-707 based system. For example, a second generation IS-95 system (IS-95B) has been standardized and utilizes a fundamental channel and one or more supplemental channels on a link to carry data traffic. The fundamental and supplemental channels carry data in parallel on orthogonal CDMA code channels. The IS-95B system may transmit at much higher data rates than an IS-95/IS-707 based system. These systems also include the use of dynamic data rates, where the data rate and number of channels can change during the call to provide a desired data rate.
If a transmitter in an IS-95B system is using multiple supplemental channels to transfer data frames and has a large number of retransmitted data frames queued up, removing supplemental channels, for higher priority applications or otherwise, could slow down the time it takes to transmit a retransmitted data frame. Since current IS-707 does not advance the retransmission or abort timer when only a retransmitted data frame or frames are received, if a retransmitted frame is lost in retransmission, the expiration of the timer is delayed until the next new data frame is received. This could cause delay if large numbers of data frames are being retransmitted. If the amount of retransmissions necessary in the particular system and situation were large, there could be adverse effects as far as slowing down transfer of data.